package com.bite.system.utils;

import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;

public class BCryptUtils {
    /**
     * 生成加密后密文
     * password   密码
     * 加密字符串
     */
    public static String encryPassword(String password){
        BCryptPasswordEncoder passwordEncoder=new BCryptPasswordEncoder();
        return passwordEncoder.encode(password);
    }
    //123456 dawdawdadawdawdaw 不能使用equals() ,match(比较是否一直，一个是用户输入的，
    // 一个是从数据库查出来的加密密文（内部根据这个密码，提取内部的盐值，然后给同样的方式再去加密，去比较，这样就会相等）)
    public static boolean matchPassword(String rawPassword,String encodePassword){
        BCryptPasswordEncoder passwordEncoder=new BCryptPasswordEncoder();
        return passwordEncoder.matches(rawPassword,encodePassword);
    }

    public static void main(String[] args) {
        System.out.println(encryPassword("123456"));
        System.out.println(
        matchPassword("123456",
                "$2a$10$yGhLb.48tmI2kYmo7G.NLOlUYvqgkZJzfbqDkCk1SvG1hpEFxFR0y"));
    }


}
